package com.hsnn.medstgmini.pro.project.service.impl;

import java.util.List;

import javax.transaction.Transactional;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.hsnn.medstgmini.base.std.dao.StdCompprofileDao;
import com.hsnn.medstgmini.base.std.model.StdCompprofile;
import com.hsnn.medstgmini.pro.project.dao.ProdProfileDao;
import com.hsnn.medstgmini.pro.project.model.BidProjectDetails;
import com.hsnn.medstgmini.pro.project.model.form.ProdProfileForm;
import com.hsnn.medstgmini.pro.project.service.ProdProfileManager;
import com.hsnn.medstgmini.sys.model.SysUser;
import com.hsnn.medstgmini.util.Pagination;

/**
 * @category 生产企业申报资质
 * @author 蔡春龙
 * @date 2015年8月26日
 */
@Service
public class ProdProfileManagerImpl implements ProdProfileManager {

	@Autowired
	private ProdProfileDao prodProfileDao;

	@Autowired
	private StdCompprofileDao stdCompprofileDao;

	/**
	 * @category 查询某企业的企业资质
	 * @date 2015年8月27日
	 * @param page
	 * @return
	 */
	public Pagination getProfileList(Pagination page) {
		return prodProfileDao.getProfileList(page);
	}

	/**
	 * @category 查询某企业资质审核结果列表
	 * @date 2015年8月27日
	 * @param page
	 * @return
	 */
	public Pagination getProfileAuditResultList(Pagination page) {
		return prodProfileDao.getProfileAuditResultList(page);
	}
	
	/**
	 * @category 查询某企业资质申报列表
	 * @date 2015年8月27日
	 * @param page
	 * @return
	 */
	@Override
	public Pagination getProfileApplyResultList(Pagination page) {
		return prodProfileDao.getProfileApplyResultList(page);
	}

	/**
	 * @category 查询企业资质澄清列表
	 * @date 2015年9月2日
	 * @param page
	 * @return
	 */
	public Pagination getProfileComplainList(Pagination page) {
		return prodProfileDao.getProfileComplainList(page);
	}

	/**
	 * @category 提交企业资质
	 * @date 2015年8月27日
	 * @param list
	 * @param user
	 */
	@Transactional
	public void submitProfileList(List<ProdProfileForm> list, SysUser user) {
		prodProfileDao.submitProfileList(list, user);
	}

	/**
	 * @category 澄清企业资质
	 * @date 2015年8月31日
	 * @param page
	 * @param stdCompprofile
	 */
	@Transactional
	public void complainProfile(Pagination page, StdCompprofile stdCompprofile) {
		stdCompprofileDao.edit(page, stdCompprofile);
		prodProfileDao.complainProfile(page);
	}

	/**
	 * @category 企业资质澄清结果查询列表
	 * @date 2015年9月2日
	 * @param page
	 * @return
	 */
	public Pagination getProfileComplainResultList(Pagination page) {
		return prodProfileDao.getProfileComplainResultList(page);
	}

	/**
	 * @category 查询已报名项目资质申报列表(生产企业端)
	 * @date 2015年8月27日 修改日期 2015-9-24 韩守松
	 * @param page
	 * @return
	 */
	public Pagination getProdProfileListList(Pagination page, SysUser user) {
		return prodProfileDao.getProdProfileListList(page, user);
	}

	/**
	 * @category 查询已报名项目资质申报列表(配送企业端)
	 * @date 2015年8月27日 修改日期 2015-9-24 韩守松
	 * @param page
	 * @return
	 */
	public Pagination getProdDelfileListList(Pagination page, SysUser user) {
		return prodProfileDao.getProdDelfileListList(page, user);
	}
	/**
	 * @category 查询企业资质申报结果列表（企业资质查看）
	 * @date 2015年8月27日
	 * @param page
	 * @return
	 */
	public Pagination getProfileAuditResultListList(Pagination page,
			SysUser user) {
		return prodProfileDao.getProfileAuditResultListList(page, user);
	}

	/**
	 * @category 查询企业资质可澄清列表
	 * @date 2015年8月27日 修改时间 2015-09-24 韩守松
	 * @param page
	 * @return
	 */
	public Pagination getProfileComplainListList(Pagination page, SysUser user) {
		return prodProfileDao.getProfileComplainListList(page, user);
	}
	
	/**
	 * @category 查询企业资质澄清结果列表
	 * @date 2015年8月27日
	 * @param page
	 * @return
	 */
	public Pagination getProfileComplainResultListList(Pagination page, SysUser user) {
		return prodProfileDao.getProfileComplainResultListList(page, user);
	}

	
	@Override
	public BidProjectDetails getBidProjectDetailsById(String projId) {
		return prodProfileDao.getBidProjectDetailsById(projId);
	}

}
